#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>

#include "constantes.h"
#include "jeu.h"
#include "editeur.h"
int chargerNiveau(int niveau[][NB_BLOCS_HAUTEUR], int level)
{
    FILE * fichier = NULL;
    char ligneFichier[NB_BLOCS_LARGEUR * NB_BLOCS_HAUTEUR + 1] = { 0 };
    int i = 0, j = 0;
    int ligne = 0;
    fichier = fopen("niveaux.lvl", "r");
    if (fichier == NULL)
	return 0;
    while (ligne != level)
	 {
	fgets(ligneFichier, 500, fichier);
	ligne++;
	}
    for (i = 0; i < NB_BLOCS_HAUTEUR; i++)
	 {
	for (j = 0; j < NB_BLOCS_LARGEUR; j++)
	     {
	    switch (ligneFichier[(i * NB_BLOCS_LARGEUR) + j])
		 {
	    case '0':
		niveau[j][i] = 0;
		break;
	    case '1':
		niveau[j][i] = 1;
		break;
	    case '2':
		niveau[j][i] = 2;
		break;
	    case '3':
		niveau[j][i] = 3;
		break;
	    case '4':
		niveau[j][i] = 4;
		break;
	    case '5':
		niveau[j][i] = 5;
		break;
		}
	    }
	}
    fclose(fichier);
    return 1;
}
int sauvegarderNiveau(int niveau[][NB_BLOCS_HAUTEUR], int level)
{
    FILE * fichier = NULL;
    int i = 0, j = 0, continuer = 0;
    fichier = fopen("niveaux.lvl", "r+");
    if (fichier == NULL)
	return 0;
    continuer = 1;
    fseek(fichier,
	    ((NB_BLOCS_HAUTEUR * NB_BLOCS_LARGEUR + 3) * (level - 1)),
	    SEEK_SET);

//Ecriture
	for (i = 0; i < NB_BLOCS_HAUTEUR; i++)
	 {
	for (j = 0; j < NB_BLOCS_LARGEUR; j++)
	     {
	    fprintf(fichier, "%d", niveau[j][i]);
	    }
	}
    fclose(fichier);
    return 1;
}
